From: Cosimo Cecchi Date: Thu, 24 Jan 2013 21:35:11 +0000 (-0500) Subject: viewSelector: notify on active page changes X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4870 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=f2edcb9bdf77110835f4e5c22a654d6ecdff402e;p=gnome-shell.git viewSelector: notify on active page changes In order to do this, we also need to move the assignment of this._activePage from the animation onComplete callback to the function itself. https://bugzilla.gnome.org/show_bug.cgi?id=682050 --- diff --git a/js/ui/viewSelector.js b/js/ui/viewSelector.js index c925cfdae..e1d2ef535 100644 --- a/js/ui/viewSelector.js +++ b/js/ui/viewSelector.js @@ -201,24 +201,27 @@ const ViewSelector = new Lang.Class({ }, _showPage: function(page) { - if(page == this._activePage) + if (page == this._activePage) return; - if(this._activePage) { - Tweener.addTween(this._activePage, + let oldPage = this._activePage; + if (oldPage) { + Tweener.addTween(oldPage, { opacity: 0, time: 0.1, transition: 'easeOutQuad', onComplete: Lang.bind(this, function() { - this._activePage.hide(); - this._activePage = page; + oldPage.hide(); }) }); } - page.show(); - Tweener.addTween(page, + this._activePage = page; + this._activePage.show(); + this.emit('page-changed'); + + Tweener.addTween(this._activePage, { opacity: 255, time: 0.1, transition: 'easeOutQuad'